Trait isotope::term::AnnotationLike[][src]

pub trait AnnotationLike {
    fn borrow_annot(&self) -> AnnotationRef<'_>;

    fn ty(&self) -> Cow<'_, Term> { ... }
fn diff_ty(&self) -> Option<&TermId> { ... }
fn base(&self) -> Cow<'_, Term> { ... }
fn ty_id(&self, ctx: &mut impl ConsCtx + ?Sized) -> Cow<'_, TermId> { ... }
fn base_id(&self, ctx: &mut impl ConsCtx + ?Sized) -> Cow<'_, TermId> { ... }
fn coerce_ty(
        &self,
        target: &TermId,
        ctx: &mut impl TyCtxMut + ?Sized
    ) -> Result<Option<Annotation>, Error> { ... } }
Expand description

A term which behaves like a (potentially borrowed) annotation

Required methods

Borrow this term’s underlying annotation

Provided methods

Get the type of this annotation

Get the transported type of this annotation, if any

Get the base type of this annotation

Get the type of this annotation

Get the base type of this annotation

Attempt to coerce the type of this annotation in a given typing context.

Implementors